#include "stm32f4xx_hal.h"

void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
{
  GPIO_InitTypeDef GPIO_InitStruct = {0};
  if(hadc->Instance == ADC1)
  {
    __HAL_RCC_ADC1_CLK_ENABLE();                                // 使能ADC1时钟
    __HAL_RCC_GPIOC_CLK_ENABLE();                               // 使能GPIOC时钟
    /*      ADC1 引脚配置    
    PC3  ------> ADC1_CHANNEL13
    */
    GPIO_InitStruct.Pin = GPIO_PIN_3;                           // PC3
    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;                    // 模拟模式
    GPIO_InitStruct.Pull = GPIO_NOPULL;                         // 无上下拉
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;          // 高速
    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);                     // 按上述设置配置PC3
  }
}

void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
{
  if(hadc->Instance == ADC1)
  {
    __HAL_RCC_ADC1_CLK_DISABLE();                               // 失能ADC1时钟
    /*      ADC1 引脚配置    
    PC3  ------> ADC1_CHANNEL13
    */
    HAL_GPIO_DeInit(GPIOC, GPIO_PIN_3);                         // 将PC3初始化为默认值
  }
}




